package com.example.practice.db;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * 数据库辅助类
 * 
 * @author asus
 *
 */
public class DBHelper extends SQLiteOpenHelper {
	private static final int DATABASE_VERSION = 1;
	private static final String DATABASE_NAME = "client.db";

	/**
	 * 在SQLiteOpenHelper的子类当中，必须有该构造函数
	 * 
	 * @param context
	 *            上下文对象
	 * @param name
	 *            数据库名称
	 * @param factory
	 *            游标工厂
	 * @param version
	 *            当前数据库的版本，值必须是整数并且是递增的状态
	 */
	public DBHelper(Context context) {
		super(context, DATABASE_NAME, null, DATABASE_VERSION);
	}

	@Override
	public void onCreate(SQLiteDatabase db_db) {
		try {
			// execSQL用于执行SQL语句
			db_db.execSQL(SensorValueDB.TABLE_CREATE);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	@Override
	public void onUpgrade(SQLiteDatabase db_db, int oldVersion, int newVersion) {
		// 数据库升级以后，删除老数据
		int version = oldVersion;
		if (version != DATABASE_VERSION) {
			db_db.execSQL("DROP TABLE IF EXISTS " + SensorValueDB.TABLE_NAME);
			onCreate(db_db);
		}
	}

}
